package com.cq.hd.common.utils;

import java.time.LocalDateTime;

public class NoUtils {

    /**
     * 生成商家入驻申请编号
     */
    public static String getBusinessEnterApplyNo() {
        return "BNO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 生成商户入驻申请编号
     */
    public static String getMerchantEnterApplyNo() {
        return "MNO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 经纪人入驻申请编号
     *
     * @return
     */
    public static String getAgentEnterApplyNo() {
        return "GNO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 商家充值申请单号
     *
     * @return
     */
    public static String getBusinessRechargeApplyNo() {
        return "BRANO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 经纪人修改银行卡申请编号
     *
     * @return
     */
    public static String getAgentUpdateBankApplyNo() {
        return "GUBNO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 生成反馈编号
     */
    public static String getFeedBackNo() {
        return "FNO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 生成次卡订单编号
     */
    public static String getMemberCardNo() {
        return "CNO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 生成会员开通/续费订单编号
     */
    public static String getMemberFeeNo() {
        return "FNO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 生成活动订单编号
     */
    public static String getActiveOrderNo() {
        return "ONO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 生成活动子订单编号
     */
    public static String getActiveSubOrderNo() {
        return "SONO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 生成活动编号
     */
    public static String getActiveNo() {
        return "ANO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 生成商家编号
     */
    public static String getBusinessNo() {
        return "B" + LocalDateUtil.toLocalDateTimeToString(LocalDateTime.now(), "yyMMddHHmmss") + GenerateUtil.getRandomNum(3);
    }

    /**
     * 生成商户编号
     */
    public static String getMerchantNo() {
        return "M" + LocalDateUtil.toLocalDateTimeToString(LocalDateTime.now(), "yyMMddHHmmss") + GenerateUtil.getRandomNum(3);
    }

    /**
     * 生成邀请商家邀请码
     */
    public static String getInviteBusinessCode() {
        return GenerateUtil.generateStr(6).toUpperCase();
    }

    /**
     * 生成商家邀请码
     */
    public static String getBusinessInviteCode() {
        return GenerateUtil.generateStr(6).toUpperCase();
    }

    /**
     * 生成用户邀请码
     */
    public static String getUserInviteCode() {
        return "U" + GenerateUtil.generateStr(9).toUpperCase();
    }

    /**
     * 生成活动分享码
     */
    public static String getActiveShareCode() {
        return GenerateUtil.generateStr(6).toUpperCase();
    }

    /**
     * 生成订单核销码码
     */
    public static String getVerifyCode() {
        return GenerateUtil.generateStr(12).toUpperCase();
    }

    /**
     * 订单结算流水编号
     */
    public static String getMemberAmtBillNo() {
        return "MBO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 提现流水编号
     */
    public static String getWithdrawalBillNo() {
        return "WBO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 佣金流水编号
     */
    public static String getCommissionBillNo() {
        return "CBO" + GenerateUtil.generateOrderSn();
    }

    /**
     * 商户资金流水编号
     */
    public static String getMerchantAmtBillNo() {
        return "MABO" + GenerateUtil.generateOrderSn();
    }

    public static String getBankPayOrderNo() {
        return "BPON" + GenerateUtil.generateOrderSn();
    }

    public static String getSubsidyOrderNo() {
        return "SON" + GenerateUtil.generateOrderSn();
    }

}
